#include<dirent.h>
#include<string.h>
#include"LinkTree.h"


void ExploreDirectory(const char *path,LTNode*parentNode)
{
    DIR *dir=opendir(path);//查看文件流路径
    if(dir==NULL)
    return;

    struct dirent *entry= NULL;//初始化指针
    while((entry=readdir(dir))!=NULL)//查找不为空的文件
    {
        if(strcmp(entry->d_name,".")==0||strcmp(entry->d_name,"..")==0)//判断头文件自带的文件
        continue;//跳过该文件进行下一步程序

        LTNode *fileNode=CreateTreeNode(entry->d_name);//创造文件
        if(fileNode==NULL);
        continue;
        ConnectBranch(parentNode,fileNode);//连接

        if(entry->d_type==4)//判断是否为文件夹
        {
            char filePath[100]={0};
            strcpy(filePath,path);
            strcat(filePath,"/");
            strcat(filePath,entry->d_name);
            ExploreDirectory(filePath,fileNode);//拼接
        }

        
    }
    closedir(dir);//关闭文件夹
}

int main(int argc,char *argv[])
{
    if(argc!=2)//参数个数
    {
        printf("invalid input numbers!\n");
        return 0;
    }

    LTree FileTree;
    InitLTree(&FileTree);

    FileTree.root->data=argv[1];//调用函数个数
    ExploreDirectory(argv[1],FileTree.root);
    Travel(&FileTree);
    return 0;
}